/*
  学习目标：Switch组件 重定向和404
  步骤：
     1. 
     2. 
     3. 
*/

import React from 'react';
import { BrowserRouter as Router, Route, NavLink, Switch, Redirect } from 'react-router-dom';
import './index.css';

export default class App extends React.Component {
  render() {
    return (
      <Router>
        <div className="App">
          <h1>app组件</h1>
          <NavLink to="/home" exact>
            调到home
          </NavLink>
          <br />
          <NavLink to="/my">调到我的音乐</NavLink> <br />
          <NavLink to="/friend">调到朋友</NavLink>
          <hr />
          {/* Switch 包住Route， 表示匹配到第一个Route就停止 */}
          <Switch>
            {/* 重定向一般放在第一个， 💥 一般要加exact */}
            <Redirect from="/" to="/home" exact />
            <Route path="/home" component={Home}></Route>
            <Route path="/my" component={MyMusic}></Route>
            <Route path="/friend" component={Friend}></Route>
            {/* 不写path，💥 放在最后一个， 表示匹配任意路径， 做404页面匹配使用 */}
            <Route component={NotFound}></Route>
          </Switch>
        </div>
      </Router>
    );
  }
}

const NotFound = () => {
  return <h1>404页面</h1>;
};

function Home() {
  return <h1>我是首页组件</h1>;
}

function MyMusic() {
  return <h1>我是我的音乐件</h1>;
}

function Friend() {
  return <h1>我是朋友组件</h1>;
}
